//
// Created by aaa on 2025/7/15.
//

#include<bits/stdc++.h>

using namespace std;

const int N = 1e5;

int n;
int dp[N][3],w[N];

//7
//5 2 6 1 3 4 6
int main(){
    cin >> n;

    for(int i = 1;i <= n;i++) cin >> w[i];

    //分类转移
//    dp[0][0] = -1e7,dp[0][1] = -1e7,dp[0][2] = 0;
//
//    for(int i = 1;i <= n;i++){
//        dp[i][1] = max(dp[i-1][1],dp[i-1][2]-w[i]);
//        dp[i][0] = dp[i-1][1] + w[i];
//        dp[i][2] = max(dp[i-1][0],dp[i-1][2]);
//    }
//    cout << max(dp[n][0],dp[n][2]);

    //分步转移
    dp[1][0] = 0,dp[1][1] = -w[1];

    for(int i = 2;i <= n;i++){
        dp[i][0] = max(dp[i-1][0],dp[i-1][1]+w[i]);
        dp[i][1] = max(dp[i-1][1],dp[i-2][0]-w[i]);
    }

    cout << dp[n][0];

    return 0;
}